package org.rufolfheszele.andpixelbyandpixel;

public interface IGameController extends IController
{
	public enum FinishReason
	{
		INVALID,
		USER_EXIT,
		RESTART_FROM_USER,
		RESTART_FROM_REMOTE_SIDE,
		CRASHED,
		FINISHED,
	};
	boolean host(String level);
	boolean join(String host, int portNumber);
	void configurationChange();
	void kickOffClient();
	void finish(FinishReason finishReason);
	void changeState(IGameStateController gameStateController);
}
